<template>
	<view class="content">
		<view @click="forceUp" style="padding: 30rpx 0; color: #007AFF;">点击强制更新(适用于在app关于我们中使用)</view>
		<view @click="getUpdateInfoOnly" style="padding: 30rpx 0; color: #007AFF;">仅获取更新信息，不弹窗</view>
	</view>
</template>

<script>
	import AppUpdateModel from "@/common/AppUpdateModel.js";
	export default {
		data() {
			return {
				title: 'Hello'
			}
		},
		onLoad() {
			//预加载更新页面，此方式加载可以让更新页面一直后台，安卓后台下载适用
			uni.preloadPage({
				url: "/pages/appUpdateModel/appUpdateModel"
			});
		},
		onShow() {
			//延迟，防止和其他弹窗冲突，引发页面错误
			setTimeout(() => {
				this.updateApp();
			}, 500);
		},
		methods: {
			getUpdateInfoOnly(){//仅获取更新信息，适用于进入关于我们页面时，获取更新信息显示，但不弹窗
				AppUpdateModel.checkUpdate({
					forceCheck: true,
					checkOnly:true,
					success: function(res) {
						console.log(res);
					}
				});
			},
			forceUp(){ //强制更新，跳过检查间隔，适用于用户主动检查版本更新
				AppUpdateModel.checkUpdate({
					forceCheck: true
				});
			},
			updateApp() { //检查app更新
				if (this.UpdateFail) {
					return;
				}
				console.log("updateApp")
				// #ifdef APP-PLUS
				this.$nextTick(() => {
					AppUpdateModel.checkUpdate({
						fail: () => {
							console.log(11)
							//更新失败时，防止重刷
							this.UpdateFail = true;
							setTimeout(() => {
								this.UpdateFail = false;
							}, 5000);
						}
					});
				})
				//#endif
			},
		}
	}
</script>

<style>
	.content {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.logo {
		height: 200rpx;
		width: 200rpx;
		margin-top: 200rpx;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 50rpx;
	}

	.text-area {
		display: flex;
		justify-content: center;
	}

	.title {
		font-size: 36rpx;
		color: #8f8f94;
	}
</style>
